This invention relates to a method and apparatus for scanning objects and generating three dimensional representations of them, preferably using a computer.
Three-dimensional (xe2x80x9c3Dxe2x80x9d) graphics is an important application of computer technology, but the creation of 3D computer representations of objects is a complicated and time consuming process. Sometimes the best way to create a 3D representation of an object on a computer is to scan in the object using a 3D scanner. This is typically the case when attempting to image people""s faces in 3D.
3D scanners exist, but they are typically expensive and complex machines using lasers, optics, motors and sensors, usually employed in commercial environments. Such commercially available 3D scanners are generally outside of the price range of a typical consumer. Yet, given the current proliferation of computer technology, it is desirable to develop a scanner that could enable a wide variety of users, including consumers, to scan objects (including people and other life forms) and generate their 3D computer representations. Thus, there is a need for a scanner which is not prohibitively expensive and at the same time allows for generating 3D computer representations of objects of sufficiently acceptable quality. In this regard, it is also desirable that such a scanner be constructed primarily with off-the-shelf components, which are readily available to consumers and which can also be used for other applications.
A typical 3D scan is a time consuming process. Yet, in practical applications, certain objects do not require high quality 3D representations (and, thus a time consuming process), while other objects should be represented with high quality. Further, it may be desirable to represent certain scanned features of an object with higher resolution than the other features. Thus, it is desirable to develop a 3D computer scanner that is capable of generating 3D representations of varying quality. And, it is also desirable that such a scanner would permit a user to scan different portions of an object with different resolutions, so that the portions of greater interest to the user are scanned with higher resolution.
A user may need to scan objects at locations that are away from home or office. In this regard, it is further desirable that such a scanner would be capable of first recording scanned images on a video medium (e.g., on a tape, video disc, or digital media) and then at a later time processing the stored images to obtain a 3D computer representation of the object depicted on the stored images.
The system of the preferred embodiment includes hardware and software for scanning objects and extracting their geometry and color information so as to generate 3D representations in a computer. In the preferred embodiment the system uses an off-the-shelf video camera and an ordinary personal computer. Preferably, the camera is mounted on a standard tripod and connected to a light source that projects a crisp line of light on the object from a slight angle with respect to the direction of the camera. In one preferred embodiment, this angle is about 10xc2x0, although a different value of the angle can be used as discussed in more detail below. The preferred system also employs an indicator (e.g., a bright light source) located within the field of view of the camera in a fixed position, preferably, in the background of the object. Note that the only hardware component employed by the preferred embodiment which is perhaps not an off-the-shelf component is the light source for projecting a crisp line of light.
The software of the preferred embodiment includes an application running on the computer, which presents a user interface for a user to interact with the software, interprets video frames produced by the camera and creates 3D geometry and color information for the scanned object. The software preferably stores the resultant 3D representation of the scanned object using a commercially standard format, such as VRML1, VRML2, DXF, 3DMF and depth-map. Such formats for storing 3D graphics are known to people skilled in the art. The computational requirements of the software are such that it can be hosted on a standard personal computer such as a PC or Macintosh. For example, in one preferred embodiment the computer is Macintosh with a Power PC 8600, 200 MHZ CPU, internal AV (Audio Video) capability, 64 Meg. of RAM and 4 GB of hard drive. In general, even a computer with lower capabilities may be used for this purpose. A person skilled in the art will be able to match proper hardware to the desired processing requirements.
The preferred system captures color information as well as the geometry of the object by swiping the scanner over an object. The scanner can scan objects of varying size. As noted, the scanner of the preferred embodiment uses a standard video camera that can be supplied by the user. The preferred scanner is hand operated (not motorized) which can reduce cost and allow the user to scan interesting areas in a more detailed manner by moving the camera more slowly and scanning the less interesting parts in less detail by moving the camera faster, so as to create a 3D representation of the object with varying resolution.
Advantageously, the preferred scanner uses the video capture capabilities of a conventional personal computer. It also preferably uses plain light (not laser), which is safer, cheaper and more readily available.
The preferred software uses video data produced by the camera during scanning to evaluate the orientation of the camera. By identifying the location of the indicator which has a specific color, brightness or pattern, the software can evaluate the orientation of the camera in relation to the object. This eliminates the need for sensors which indicate the orientation of the camera during scanning and, therefore, further lowers the complexity and cost of the system. The scanner can be used xe2x80x9coff linexe2x80x9d without being connected to the computer, and then the resultant video can be transmitted to the computer and processed later.
Thus, the preferred embodiment provides a 3D scanning system that is affordable by many consumers and sufficiently simple to set up and use by such consumers. Yet, it is sufficiently versatile to be employed for commercial applications as well.